package com.yanqu.road.entity.activity.dafuweng;

import com.yanqu.road.entity.DataObject;
import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.player.UserBaseInfo;

@FieldTypeAnnotation(tableName = "t_c_activity_dfw_boss")
public class DFWBossData extends DataObject {

    @FieldTypeAnnotation(desc = "活动Id", select = true)
    private int activityId;

    @FieldTypeAnnotation(desc = "商会活动分组ID")
    private int groupId;

    @FieldTypeAnnotation(desc = "BossID")
    private int bossId;

    @FieldTypeAnnotation(desc = "批次")
    private int bossBatch;

    @FieldTypeAnnotation(desc = "boss类型")
    private int bossType;

    @FieldTypeAnnotation(desc = "总血量")
    private int totalHp;

    @FieldTypeAnnotation(desc = "当前血量")
    private int curHp;

    @FieldTypeAnnotation(desc = "击杀玩家ID")
    private long killerUserId;

    @FieldTypeAnnotation(desc = "击杀玩家信息")
    private UserBaseInfo killerPlayer = null;

    @FieldTypeAnnotation(desc = "死亡时间")
    private long killTime;

    public void setActivityId(int activityId) {
        this.activityId = activityId;
    }

    public void setBossId(int bossId) {
        this.bossId = bossId;
    }

    public void setBossBatch(int bossBatch) {
        this.bossBatch = bossBatch;
    }

    public void setBossType(int bossType) {
        this.bossType = bossType;
    }

    public void setTotalHp(int totalHp) {
        this.totalHp = totalHp;
    }

    public void setCurHp(int curHp) {
        if (curHp != this.curHp) {
            this.curHp = curHp;
            setUpdateOption();
        }
    }

    public void setKillerUserId(long killerUserId) {
        if (killerUserId != this.killerUserId) {
            this.killerUserId = killerUserId;
            setUpdateOption();
        }
    }

    public void setKillerPlayer(UserBaseInfo killerPlayer) {
        if (killerPlayer != this.killerPlayer) {
            this.killerPlayer = killerPlayer;
            setUpdateOption();
        }
    }

    public void setKillTime(long killTime) {
        if (killTime != this.killTime) {
            this.killTime = killTime;
            setUpdateOption();
        }
    }

    public int getActivityId() {
        return activityId;
    }

    public int getBossId() {
        return bossId;
    }

    public int getBossBatch() {
        return bossBatch;
    }

    public int getBossType() {
        return bossType;
    }

    public int getTotalHp() {
        return totalHp;
    }

    public int getCurHp() {
        return curHp;
    }

    public long getKillerUserId() {
        return killerUserId;
    }

    public UserBaseInfo getKillerPlayer() {
        return killerPlayer;
    }

    public long getKillTime() {
        return killTime;
    }

    public int getGroupId() {
        return groupId;
    }

    public void setGroupId(int groupId) {
        if (this.groupId != groupId) {
            this.groupId = groupId;
            setUpdateOption();
        }
    }
}
